System and method of synchronizing an in-vehicle control system with a remote source

ABSTRACT

The present application relates to an in-vehicle control system for synchronizing files with a remote source. The remote source includes a storage device configured to store a first file. The system includes a communications device capable of establishing a wireless communication link with the remote source. The communications device is configured to send, receive, or both send and receive files to and/or from the remote source. The system further includes a memory device configured to store a second file. The system yet further includes a data processing device coupled to the communications device, the data processing device configured to perform a comparison of the first file of the remote source and the second file of the memory device, wherein the data processing device is further configured to synchronize the file of the remote source and the file of the in-vehicle control system based on the comparison.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

The present application claims the benefit of U.S. Provisional PatentApplication No. 60/858,975 filed Nov. 14, 2006, the entire disclosure ofwhich is incorporated by reference herein. The present application alsoincorporates the entirety of U.S. Pat. No. 7,257,426 by reference.

BACKGROUND

The present application relates generally to the field ofsynchronization between an in-vehicle control system and a remotesource. The application relates more specifically to systems and methodsfor wireless data synchronization between an in-vehicle control systemand a personal computer.

Vehicles typically include a number of electronics systems andsubsystems such as an audio system, a mobile telephone system, anavigation system, an in-vehicle entertainment system, an enginemanagement system that may be controlled by a user interface, an HVACsystem, etc. One or more of these systems may include an in-vehiclecontrol system having media capabilities that may be setup in thevehicle for a user to access digital audio or video content via thecontrol system. The control system may include a control interface andaccompanying controls and may be configured to be coupled or integratedwith other vehicle electronic systems, such as an audio or video system.

The media for the system may include conventional media sources (e.g.,CDs, DVDs, etc.), but recently may also include media files from theInternet and media files stored on other data storage devices (i.e.,flash memory, hard drives, etc.). Typical vehicle audio systems mayinclude conventional stereo inputs for external media players, slots forflash memory devices, and adapters for specific media players. Users ofdigital media files typically store their library of digital media filesprimarily on a home or personal computer. Thus, to access or play mediafiles via an in-vehicle audio system the user conventionally must useone of the aforementioned physical devices to transport media files froma home computer to a vehicle. The user must normally take multiple stepsto ensure his vehicle audio system is adapted for use and compatiblewith the physically transported media device. For example, if a userowns a media player and wishes to play the media files stored within themedia player on a car stereo, the user must purchase and install anaftermarket player-to-vehicle adapter; if the user would like to listenfor an extended period of time, the user may also need to install apower adapter. In addition to the cost, these adapters are oftendevice-specific. Thus, if the user changes media players at some point,his installed adapters may not be compatible with his new player.

In addition to transferring media files, it is becoming more desirableto store files of many different types on in-vehicle control systems.For example, it may be desirable to store navigational information,weather information, satellite radio information, setup installation,vehicle setup related information, contact information, calendarinformation, e-mail information, browser information, and any other typeof information on an in-vehicle control system. There are currently fewways of transferring this type of information to vehicles. For example,typical vehicles load navigational information into the car navigationalsystem by reading a set of CDROMs or DVDs.

There is a need for a system for synchronizing the data store of avehicle with a remote source. It is challenging and difficult to provideadvanced media and communications systems in vehicles. It is challengingand difficult for engineers of vehicle systems to provide systems thatare robust, capable of mass-production, easy-to-use, and technicallysound. Changing one aspect of a vehicle media system and/or vehiclecommunication system might negatively impact other aspects or systems.

It would be desirable to provide a system and/or method that satisfiesone or more of these needs or provides other advantageous features.Other features and advantages will be made apparent from the presentspecification. The teachings disclosed extend to those embodiments thatfall within the scope of the claims, regardless of whether theyaccomplish one or more of the aforementioned needs.

SUMMARY

One embodiment relates to an in-vehicle control system for synchronizingfiles with a remote source. The remote source includes a storage deviceconfigured to store a first file. The system includes a communicationsdevice capable of establishing a wireless communication link with theremote source. The communications device is configured to send, receive,or both send and receive files to and/or from the remote source. Thesystem further includes a memory device configured to store a secondfile. The system yet further includes a data processing device coupledto the communications device, the data processing device configured toperform a comparison of the first file of the remote source and thesecond file of the memory device, wherein the data processing device isfurther configured to synchronize the file of the remote source and thefile of the in-vehicle control system based on the comparison.

Another embodiment relates to a method for synchronizing the data filesof an in-vehicle control system with a remote source and includesreceiving a synchronization command from a wireless portable device,wherein the synchronization command is received by a signal receiver,activating the in-vehicle control system from a powered-down state to apowered-up state, establishing a data communications link between thein-vehicle control system and the remote source, and synchronizing atleast one data file between the in-vehicle control system and the remotesource via the data communication link.

Another embodiment relates to a method for synchronizing the data filesof a remote source with an in-vehicle control system and includesreceiving a synchronization command to an in-vehicle control system viaan in-vehicle input device coupled to the in-vehicle control system,establishing a data communication link between a remote source and thein-vehicle control system, and synchronizing a plurality of data filesstored in the remote source with a plurality of data files stored in thein-vehicle control system.

The invention is capable of other embodiments and of being practiced orbeing carried out in various ways. Alternative exemplary embodimentsrelate to other features and combinations of features as may begenerally recited in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will become more fully understood from the followingdetailed description, taken in conjunction with the accompanyingdrawings.

FIG. 1 is a perspective view of a motor vehicle that includes a numberof vehicle systems, including an in-vehicle control system according toone exemplary embodiment.

FIG. 2 is a front elevation view of the user interface of the in-vehiclecontrol system of FIG. 1 according to an exemplary embodiment.

FIG. 3 is a block diagram of the in-vehicle control system of FIG. 1.

FIG. 4 is a more detailed embodiment and block diagram of the in-vehiclecontrol system of FIG. 3 according to one exemplary embodiment.

FIG. 5 is a perspective view of the in-vehicle control systemcommunicating with a remote source and a key fob, according to anexemplary embodiment.

FIG. 6 is a block diagram of the in-vehicle control system of FIGS. 3and 4 connected to the vehicle data bus and other vehicle systems,according to an exemplary embodiment.

FIG. 7 is a flow chart of the synchronization process between thein-vehicle control system and a remote source, as activated by a sourceexternal the vehicle, according to an exemplary embodiment.

FIG. 8 is a flow chart of the synchronization process between thein-vehicle control system and a remote source, as activated by a sourceinternal the vehicle, according to an exemplary embodiment.

FIG. 9 is a block diagram of a home control device for use with thein-vehicle control system of the previous FIGS., according to anexemplary embodiment.

FIG. 10 is a flow chart of a synchronization process for use with thehome control device of FIG. 9 or otherwise, according to an exemplaryembodiment.

FIG. 11 is a flow chart of a synchronization process that may becontrolled by voice and speech recognition.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

Before turning to the figures which illustrate the exemplary embodimentsin detail, it should be understood that the application is not limitedto the details or methodology set forth in the following description orillustrated in the figures. It should also be understood that thephraseology and terminology employed herein is for the purpose ofdescription only and should not be regarded as limiting.

Referring generally to the FIGS., an in-vehicle control system isprovided. The in-vehicle control system includes a processor and iscommunicably coupled to memory. The in-vehicle control system isconfigured to synchronize the files of a local device via wirelesscommunication with a remote source. The in-vehicle control systemprovides at least one method for activating or initiating thesynchronization. According to an exemplary embodiment, thesynchronization is activated via a key fob.

Referring to FIG. 1, a vehicle 100 includes a number of subsystems foruser convenience and entertainment. Vehicle 100 generally includes aheating, ventilation, and air-conditioning (HVAC) system, a soundsystem, and an in-vehicle control system 106 (e.g., media system,navigational system, entertainment system, etc.). The HVAC system andsound system may be coupled to in-vehicle control system 106, which iscapable of controlling and monitoring both systems, automatically or bya manual user command. It is noted that in various exemplaryembodiments, vehicle 100, the HVAC system, the sound system, and othervehicle systems may be of any past, present, or future design capable ofinteracting with in-vehicle control system 106. In-vehicle controlsystem 106 is shown fixably mounted to a center console of a vehicle,but various components of in-vehicle control system 106 could also bemounted to other locations (e.g., the steering wheel, a visor, driverinformation console, etc.).

Referring to FIG. 2, one exemplary embodiment of in-vehicle controlsystem 106 is shown. In-vehicle control system 106 generally includes anoutput display 108, one or more knobs 110, one or more pushbuttons 111,112, and one or more tactile user inputs or pushbuttons 114, whichfacilitate controlling various vehicle and media functions. In oneexemplary embodiment, output display 108 may be a touch-screen display,while in other exemplary embodiments, may be any other non-touchsensitive display. In still other exemplary embodiments, output display108 may be of any technology (e.g., LCD, DLP, plasma, CRT, OLED, LED,LEP, OEL), configuration (e.g., portrait or landscape), or shape (e.g.,polygonal, curved, curvilinear). Knobs 110 and pushbuttons 112 and 114may be configured: (i) to control functions of the HVAC system such asfan speed, cabin temperature, or routing of air flow, (ii) to controlplayback of media files over the sound system, (iii) to controlretrieval of phonebook entries, or (iv) to control any other desiredvehicle function. Pushbuttons 114 typically allow for the selection anddisplay of various functions of in-vehicle control and media system 106including HVAC system control, sound system control, media systemcontrol, hands-free phone use, contract or address/phone bookmanagement, calendar viewing/modification, and vehicle data logging. Theoperation of pushbutton 114 for media playback may display a mediaplayback menu screen or execute commands that allow the user to view,select, sort, search for, and/or play audio or video files by tactile ororal command. The operation of pushbutton 114 for hands-free phoneoperation may display a menu screen or execute commands that allow theuser to connect in-vehicle control system 106 to a mobile phone so thatspeaking into the vehicle console of in-vehicle control system 106operates the mobile phone. The operation of pushbutton 114 for HVACcontrol may display a menu screen or execute commands that allow theuser to control cabin temperature and air flow by tactile or oralcommand. The operation of pushbutton 114 for contact management maydisplay a menu screen or execute commands that allow the user to view,list, select, sort, search for, edit, and/or dial one or more entriescontaining personal contact information, by use of a tactile or oralcommand. The operation of pushbutton 114 for calendar management maydisplay a menu screen or execute commands that allow the user to view,list, select, sort, search for, edit, and/or create one or more entriescontaining personal schedule information by tactile or oral command. Theoperation of pushbutton 114 for vehicle log management may display amenu screen or execute commands that allow the user to input, view,select and/or reset information related to the vehicle operation (e.g.,fuel economy, engine temperature, distance to empty, etc.) by tactile ororal command.

Referring to FIG. 3, in-vehicle control system 106 is capable ofaccessing data files from a remote source 116 and/or remote source 156over a communication link 118. For example, in-vehicle control and mediasystem 106 may access media files, phonebook data files, phoneannunciators, configuration data, e-mail data, text message data, voicemail data, text data, music information, map information, directioninformation, point of interest information, menu information, calendardata, or any other accessible data for use by in-vehicle control andmedia system.

In-vehicle control system 106 generally includes a communication device120, a data processing system 122, a display driver 124, a userinterface 126, an audio input device 128, an audio output device 130,and a memory device 132.

Communication device 120 is generally configured to establishcommunication link 118 with remote source 116. In one exemplaryembodiment, in-vehicle control and media system 106 may establish awireless communication link such as with Bluetooth communicationsprotocol, an IEEE 802.11 protocol, an IEEE 802.16 protocol, a cellularsignal, a Shared Wireless Access Protocol-Cord Access (SWAP-CA)protocol, a wireless USB protocol, a WiFi-compatible protocol, aWiMax-compatible protocol, mobile WiMax, a ZigBee-compatible protocol,or any other suitable wireless technology. In another exemplaryembodiment, in-vehicle control and media system 106 may establish awired communication link such as with USB technology, IEEE 1394technology, optical technology, other serial or parallel porttechnology, or any other suitable wired link. Communication device 120may receive one or more data files from remote source 116 and/or 156. Invarious exemplary embodiments, the data files may include text, numericdata, audio, video, or any combination thereof. Communication device 120may also transmit information and/or data files to one or more remotesources such as remote source 116 and/or remote source 156.

Communication device 120 is shown to include (or be communicably coupledto) an antenna. Communication device 120 may establish a wirelesscommunication link (or otherwise wirelessly communicate) withtransceiver 115 of remote source 116. In situations where remote source116 includes two transceivers (or a single receiver capable ofnear-simultaneous communication with multiple devices), remote source116 may forward requests, information, and/or data between communicationdevice 120 and another remote source 156. For example, communicationdevice 120 may establish a Bluetooth-compatible wireless communicationlink with transceiver 115 of remote source 116. Communication device 120may send a command to transceiver 115 so that remote source 116establishes a second wireless communication link 119 (e.g., a cellularcommunication link) with remote source 156 via transceiver 117. Whenused in this manner, communication device 120 may communicate (e.g.,send and receive files to/from) with remote source 156. Remote source156 may be coupled to other communication networks (the Internet, LANs,WANs, remote servers) 157 and/or otherwise coupled to other servers ordata stores. For example, remote source 116 could be a mobile phone andremote source 156 could be a wireless service organization incommunication with the Internet, another network, and/or a remote server157. Communication device 120 may receive files from these sources(e.g., 116, 156, 157) after sending remote source 116 appropriatecommands, requests, or otherwise.

Data processing system 122 is coupled to communications device 120 andis generally configured to control each function of in-vehicle controland media system 106. Data processing system 122 preferably facilitatesspeech recognition capabilities of in-vehicle control system 106 for theconvenience of the user. Data processing system 122 may include digitalor analog processing components or be of any past, present, or futuredesign that facilitates control of in-vehicle control system 106. Dataprocessing system 122 may include or be coupled to any number ofprocessors configured to execute or facilitate the execution of theprocesses described herein. Data processing system 122 may becommunicably coupled to memory (e.g., memory device 132) and configuredto access and/or execute computer code stored in the memory and relatingto the processes described herein (or otherwise).

Display driver 124 is coupled to output display 108 (or another displaymounted in the vehicle) and is typically configured to provide anelectronic signal to the output display (or the another display). In oneexemplary embodiment, the electronic signal may include the text and/ornumeric data of the data files, while in other exemplary embodiments,any other desired data may be included with the text and/or numeric dataor by itself in the electronic signal to the output display. The displaydriver and the electronic signal may operate according to any suitabledigital and/or analog output technology. In another exemplaryembodiment, display driver 124 may be configured to control outputdisplay 108 with touch-screen capabilities, while in other exemplaryembodiments, display driver 124 may be configured to control display 108without making use of touch-screen capabilities. In still otherexemplary embodiments, display driver 124 may be of any past, present,or future design that allows for the control of output display 108.

Audio input device 128, for example a microphone, is configured toreceive the utterance of a user for transmission to data processingsystem 122 for speech recognition so that the functions of in-vehiclecontrol system 106 may be operated by voice command. Audio output device130, for example a built-in speaker, is configured to provide the userwith an audio prompt of various functions, such as user selectionconfirmation.

Memory device 132 is configured to store data accessed by in-vehiclecontrol system 106. For example, memory device 132 may store datareceived from remote source 116, data created by data processing system122 that may be used later, intermediate data of use in a calculation,or any other data used by in-vehicle control system 106. Memory device132 may include any number of memory devices on control system 106.Memory device 132 may also include computer code for executing one ormore process described herein (for execution by data processing system122 or another processor of the system). Memory device 132 iscommunicably coupled to data processing system 122. Memory device 132may also be configured to store settings or configuration data relatingto one or more vehicle control systems or processes. For example, memorydevice 132 may be configured to store synchronization settings. Thesynchronization setting may be set via the user interface (e.g., viaoption “Sync Settings” shown in FIG. 2, etc.), voice command, orotherwise. The control system may read the synchronization settings frommemory and execute various synchronization steps according to thesynchronization settings. This way, if file synchronization is triggeredremotely or when the user does not want to manually configure thesynchronization process, the synchronization process may complete in amanner desirable to the user.

Referring to FIG. 4, in-vehicle control system 106 and remote source 116are shown in greater detail. Data processing system 122 generallyincludes a text-to-grammar device 134, a speech recognition device 136,and a text-to-speech device 138.

Text-to-grammar device 134 may be coupled to communications device 120and is generally configured to generate a phonemic representation of thetext and/or numeric data of each of the data files received bycommunications device 120 from remote source 116. The phoneticrepresentation of the text and/or numeric data of each data file may beconfigured to facilitate speech recognition of each data file. Afterconversion of a data file to a phonetic representation, the data filemay be accessed via an oral input command received by speech recognitiondevice 136 via audio input device 128.

Speech recognition device 136 is typically configured to receive an oralinput command from a user via audio input device 128. Speech recognitiondevice compares the received oral input command to a set ofpredetermined input commands, which may have been configured bytext-to-grammar device 134 or otherwise. In various exemplaryembodiments, the input commands may be related to the playback of amedia file, the dialing or input of a phone book entry, the entry orlisting of calendar or contact data, the control of the HVAC system, orany other desired function to be performed on data. Speech recognitiondevice 136 may determine an appropriate response to the oral inputcommand received from the user, for example, whether the oral inputcommand is a valid or invalid instruction, what command to execute, orany other appropriate response. Speech recognition device 136 (and/orthe predetermined set of input commands) may be configured to recognizecommands relating to the initialization or activation of synchronizationactivities. Speech recognition device 136 (and/or the predetermined setof input commands) may also be configured

Text-to-speech device 138 is generally configured to convert the textand/or numeric data of each data file received from remote source 116into an audible speech representation. This functionality may allowin-vehicle control system 106 to audibly give data to the user via audiooutput device 130 or the audio system 104. For example, in-vehiclecontrol system 106 may repeat a user selected function back to the user,announce media file information, provide phonebook or contactinformation, or other information related to data stored in memory 132,remote source 116, remote server 154, etc.

Memory device 132 includes both a volatile memory 140 and a non-volatilememory 142. Volatile memory 140 may be configured so that the contentsstored therein may be erased during each power cycle of the controlsystem 106 or the vehicle 100. Non-volatile memory 142 may be configuredso that the contents stored therein may be retained across power cycles,such that upon control system 106 power-up, data from previous systemuse remains available for the user.

According to an exemplary embodiment, remote source 116 and/or 156 maybe any suitable remote source that includes a transceiver and is able tointerface with in-vehicle control system 106 over communications link118 (either wireless or wired). In various exemplary embodiments, remotesource 116 may be one or more of a mobile phone 144, a personal digitalassistant (PDA) 146, a media player 148, a personal navigation device(PND) 150, a remote server 154 that may be coupled to the Internet, acomputer, a personal computer, a networked storage drive, or variousother remote sources. Remote source 116 may have a memory or datastorage device, one or more processing devices, and one or morecommunications devices.

Referring still to FIG. 4, in-vehicle control system 106 may includeinterfaces to other systems. For example, in-vehicle control system 106is shown to include interfaces to an audio input device (e.g.,microphone) 128, user interface 126, audio output device 130, outputdisplay 108, and audio system 104. In-vehicle control system 106 mayprovide audio output to either audio output device 130 or audio system104. According to an exemplary embodiment, audio system 104 is theprimary audio system of the vehicle. The interfaces included onin-vehicle communications system 106 may be configured to operateaccording to an analog format, a digital format, and/or any combinationthereof. The interfaces may include any number of physical jacks orterminals for physically coupling the in-vehicle control system to theother vehicle systems (e.g., output display 108, audio system 104, audioinput device 128, etc.).

Referring to FIG. 5, according to an exemplary embodiment, vehicle 100and control system 106 are shown in wireless communication with homecomputer or remote source 116. Remote source 116 is shown having acomputer tower (“CPU”) 503, a display 505, and a wireless communicationdevice 502. According to an exemplary embodiment, generally, when a userwould like to synchronize files residing in control system 106 andremote source 116, the user may press a synchronization button 504 on aportable wireless device 501. Portable wireless device 501 will send asynchronization command from the portable wireless device 501 to thevehicle 100 and control system 106. Processes within control system 106may then initiate wireless communication link 118 with remote source 116(e.g., home personal computer, etc.) and begin a synchronizationprocess.

Referring further to FIG. 5, according to an exemplary embodiment, thewireless synchronization system using a portable wireless device 501 toactivate communication advantageously allows a user to synchronize whilevehicle 100 is parked, unattended, and turned off. As long as portablewireless device 501 is within the range of the vehicle 100, the user mayinitiate synchronization with the remote server 154. Portable wirelessdevice 501 may include a synchronization button 504 and one or morebuttons that may function to provide a normal vehicle function (e.g.,activate vehicle alarm, lock/unlock the doors, open the trunk, start thevehicle, etc.). According to various alternative embodiments, thesynchronization activating functionality of portable wireless device 501may be incorporated into any number different of types of portablewireless devices 501 (e.g., personal digital assistants, globalpositioning devices, personal media players, wallets, umbrella handles,cellular telephones, home control devices, etc.). According to variousother alternative embodiments, portable wireless device 501 may attachor be included with remote source 116 (e.g., may be a USB dongle, IEEE1394 device, other serial or parallel communicating device, a deviceintegrated onto the motherboard of the CPU 503, etc.). According to anexemplary embodiment, portable wireless device 501 may be any portablewireless device 501 of past, present or future design capable ofwirelessly communicating with vehicle 100 to activate wirelesssynchronization between control system 106 and remote source 116.

Referring further to FIG. 5, according to an exemplary embodiment,portable wireless device 501 may be configured to activate a poweringfunction (e.g., booting function, initiating function, “waking”function, powering-up function, etc.) of control system 106. Forexample, vehicle 100 and control system 106 may be turned off (e.g.,powered down, “hibernating,” “sleeping,” powering down, etc.) and parkedoutside the user's home (e.g., in the user's garage, on the street, orotherwise). When a user would like to synchronize, and after he pressessynchronization button 504, a communications signal 506 sent from theportable wireless device 501 to the vehicle 100 may cause control system106 to activate (e.g., power-up, “wake,” “boot,” “initiate,” etc.).According to various exemplary embodiments, control system 106 mayexperience a range of power-up or activation levels. For example, signal506 may trigger a fully powered-up state of control system 106, a“minimally powered-up” state wherein only the components of vehicle 100and control system 106 necessary to effect the synchronization arepowered, and/or any other powered-up level.

Referring further to FIG. 5, according to an exemplary embodiment,synchronization may also be initiated via remote source 116, vehicle100, or in-vehicle control system 106. For example, wirelesscommunication device 502 may send a “wake” and/or synchronize signal viacommunication link 118 to control system 106. Wireless communicationdevice 502 may exist as a device internal or external to remote source116. Wireless communication device 502 may be a full-time network device(e.g., network node module, wireless card, etc.), a full-functionnetwork device (e.g., router, gateway, relay, hub, etc.), a reducedfunction network device (e.g., end node, etc.), or any other type ofcommunications device or network device. Wireless communication device502 may be a communication device configured to provide any number orany type of wireless communications compatible with at least onecommunication device of control system 106. For example, wirelesscommunication device 502 may be a WiFi device (802.xx, etc.), alow-powered wireless device (e.g., Bluetooth, ZigBee, low-powered RF,etc.), a high powered RF device, a cellular device, a satellite device,or any wireless device of the past, present or future that is capable oftransmitting and/or receiving wireless data communications. It isimportant to note that wireless communication device 502 need not bephysically coupled to remote source 116. For example, wirelesscommunication device 502 may be a wireless hotspot that may communicatewith remote source 116 via an Internet connection, LAN, WAN, or anyother network.

Referring further to FIG. 5, according to an exemplary embodiment,remote source 116 is a personal computer. However, remote source 116 maybe any device having files capable of synchronization (e.g., transferto/from) with control system 106. According to various exemplaryembodiments, remote source 116 may be a remote sever 154. According toother various embodiments, remote source 116 may be a commercial dataserver, a PDA, a mobile phone, a PND, a pager, a media player, a remotesource with a wired port, a remote server, another vehicle, etc.Additionally, while remote source 116 is shown as having a personalcomputer tower or CPU and a display 505, remote source 116 may not havea display or the display may be integrated with the housing of thepersonal computer.

Referring further to FIG. 5, according to an exemplary embodiment, thewireless signal 506 sent from wireless portable device 501 may be aradio frequency signal. For example, wireless signal 506 may be alow-powered radio frequency signal sent from a key fob. Wireless signal506 may be of roughly the same frequency and/or of roughly the sameformat as the primary vehicle key function. When implemented in thismanner, the key fob may advantageously use the same transmitter (ortransceiver) to activate synchronization that is used to provide theprimary vehicle function (e.g., unlock/lock, etc.). According to variousexemplary embodiments, the wireless signal 506 may be of anyelectromagnetic radio frequency, frequencies, format, or technologycapable of being used as a wireless data communication frequency (e.g.,frequencies from 3 hz-300 ghz, etc.). For example, wireless signal 506may be an optical communications signal (e.g., infrared, etc.).

Referring to FIG. 6, according to an exemplary embodiment, controlsystem 106 of FIGS. 1-6 is shown in communication with a vehicle databus 601 and a variety of other vehicle subsystems. According to anexemplary embodiment, vehicle data bus 601 is the primary vehicle databus and is communicably coupled to many of the functional subsystems ofthe vehicle 100. For example, vehicle data bus 601 may be coupled incommunication with an engine controller 605 (ECU), a door release 604, asignal receiver 602, a signal transmitter 603, a home control system607, and/or another vehicle subsystem or function 606 (e.g., alarmsystem, etc.). Wireless portable device 501 is shown transmitting tosignal receiver 602. Signal receiver 602 is coupled to vehicle data bus601. This configuration may allow control system 106 to power-down whilesignal receiver 602 stays powered and in a signal receiving mode ofoperation. When signal receiver 602 receives a synchronization signal,signal receiver 602 may route or relay that signal to the vehicle databus 601. Vehicle data bus 601 and/or components located on controlsystem 106 may then be configured to wake control system 106 forsynchronization. The same signal receiver 602 may be configured toreceive signals relating to primary vehicle functions that may use thevehicle data bus 601. For example, wireless portable device 501 maytransmit a door release signal to signal receiver 602 that is routed viathe vehicle data bus 601 to a door release component 604. According toother exemplary embodiments, signal transmitter/transceiver 603 and/orsignal receiver 602 are directly coupled to and/or integrated withcontrol system 106.

According to an exemplary embodiment, vehicle data bus 601 is anelectronic communications network that interconnects components insidethe vehicle. Vehicle data bus 601 may be connected to devices such as anengine control module, a timing control module, an anti-lock brakingsystem, a diagnostics system, a wheel speed sensor, any number of othersensors, and/or various other body control modules. The modules andsystems coupled to the vehicle data bus may further receive input from avariety of sensors or feedback enabled actuators. Data exchange mayfrequently occur between vehicle components during operation of thevehicle. For example, the engine may communicate with the transmission,coordinating speed and gear shifting. These communications may occurover vehicle data bus 601. Vehicle data bus 601 may be the centralnetwork of vehicle 100, wherein vehicle modules and devices may beplugged into vehicle data bus 601 to communicate with other modules onthe vehicle data bus 601. Each module or device on vehicle data bus 601may control specific components relating to various vehicle functionsand may communicate with the other modules as necessary using a standardprotocol. Vehicle data bus 601 may be any number of common data buses,including, but not limited to a local interconnect network (LIN), acontroller area network (CAN), a FlexRay bus, a media-oriented bus, aKeyword Protocol bus, a vehicle area network (VAN), a DC-BUS, anIDB-1394 bus, a SMARTwireX bus. According to various exemplaryembodiments, vehicle data bus 601 may be a vehicle data bus of any past,present or future design or technology (standard or proprietary) capableof facilitating interconnected vehicle device-to-vehicle devicecommunications.

Referring further to FIG. 6, according to an exemplary embodiment,signal transmitter (or transceiver) 603 is coupled to vehicle data bus601 and is in communication with a variety of external devices 609.External devices 609 may be home-based external devices 609 that may bewirelessly controlled via the signal transmitter 603. For example,external devices 609 may be radio frequency-controlled home lightingdevices, garage door openers, security systems, etc. Additionally, homecontrol system 607 may provide similar functionality via other wirelesstechnology or methods. For example, signal transmitter 603 may be arelatively low-powered signal transmitter while home control system 607provides a higher power signal, WiFi signal, cellular signal, etc.Signal transmitter 603 may be a transmitter that can be programmed toduplicate transmission codes of original transmitters. According to anexemplary embodiment, home control system 607 may include a series ofauxiliary buttons the driver of vehicle 100 may press to activate anumber of home control functions. According to an exemplary embodiment,the auxiliary buttons of home control system 607 may activate orotherwise effect signal transmission from signal transmitter 603 toexternal devices 609.

Referring yet further to FIG. 6, control system 106 may include and/orbe coupled to location module 610. Location module 610 may be anyhardware, software and/or hardware and software combination configuredto communicate location information to control system 106. Controlsystem 106 may directly couple to location module 610 or be communicablycoupled to location module 610 via the vehicle data bus 601. Locationmodule 610 may be a Global Position System (GPS) module, or a moduleconfigured to obtain or calculate location information by other methods.For example, location module 610 may first determine that home controlsystem and/or signal transmitter/transceiver 603 are within range ofdevice 609 to make a second determination that the user is at home,work, or otherwise. Using this second determination, control system 106may initiate and/or execute synchronization between a vehicle memorydevice and a memory device of a remote source. The synchronization maybe configured specifically for the determined location. In this manner,the vehicle control system may intelligently synchronize with differentremote sources based on a determination of location (e.g., a “home”location determination may trigger the synchronization of media fileswhile a “work” location determination may trigger the synchronization ofwork-related files (contact information, calendar information, etc.)).Location information may comprise coordinates (e.g.,latitude/longitude), a signal representing a location determination(e.g., a signal representing “home”), or any other metric, data, orsignal pertaining to location. According to an exemplary embodiment,control system 106 is configured to receive the location informationfrom the location module 610 after location is determined. In responseto receiving the location information, control system 106 may beconfigured initiate a synchronization process with remote source 116.According to yet other exemplary embodiments, remote source 116 mayinclude a location module (e.g., GPS receiver) and transfer locationinformation to control system 106 via communication link 118. Accordingto yet other exemplary embodiments, remote source 116 is configured toreceive location information from another device (e.g., a wirelessservice organization, a separate GPS device, a remote server, a remotesource, a connected mobile phone, a GPS-capable PDA, etc.) and totransfer the location information to control system 106 viacommunication link 118. Similarly, communication device 120 may beconfigured to receive location information wirelessly (e.g., from a WiFihotspot, a nearby Bluetooth-compatible device, a GPS device, a mobilephone, a PDA, etc.). Further, data processing system 122 may beconfigured to make a location determination based on data received fromvehicle data bus 601 and/or communication device 120. For example, whencommunication device 120 is able to detect the user's “home” wirelessnetwork (e.g., and the signal is sufficiently strong for a period oftime), data processing system 122 may be configured to determine thatthe user is parked at home, and initiates synchronization based on thisdetermination. By way of further example, when home control system 610and/or transmitter/transceiver 603 is interacting with devices known bydata processing system 122 to be “home” devices, processing system 122may be configured to determine that the user is at home and to initiatea synchronization process. Yet further, processing system 122 might beconfigured to “try” to connect communication device 120 with devicesknown to be “home devices.” If the connection is established (and/or theconnection is stable for a period of time), the system will make alocation determination and/or initiate the synchronization activity.

Referring to FIG. 7, according to an exemplary embodiment, a flow chartis provided for a process of synchronizing data files between controlsystem 106 and remote source 116. The process illustrated in FIG. 7 maybegin at step 701 wherein the vehicle may receive a synchronizationsignal (step 701) from the portable wireless device (remote control)501. As mentioned previously, the synchronization process may also beinitiated by any number of voice commands, user interface commands,location determinations, button presses (e.g., a press of “Sync” button111 shown in FIG. 2) or other processes that may be completed by controlsystem 106 or otherwise.

Upon receiving the synchronization signal from the remote control 701,the control system 106 may then power-up, wake, or otherwise initiate(step 702). Once the necessary components of control system 106 arepowered and active, the system may then establish a communications linkwith a remote source (step 703). While a variety of communications maythen be accomplished, according to an exemplary embodiment the systemwill then identify files to transfer (step 704) from remote source 154to a vehicle memory device (e.g., memory device 132 shown in previousFIGS.). The step of identifying files to transfer (step 704) may includeor be precluded by sending file information to the remote source. Forexample, control system 106 may be configured to generate a data filecomprising information regarding the files already stored in the vehiclememory device. The generated file may include metadata or summaries ofmetadata relating to the files stored in the vehicle memory device. Thegenerated file may be plain text, XML formatted, or otherwise. Theremote source may be configured to parse or otherwise read the file todetermine a transfer set. According to another exemplary embodiment, atstep 704 control system 106 may be configured to receive fileinformation relating to the files stored on the remote source. Usingthis received file information, control system 106 may create a transferset, synchronization set, or otherwise. The transfer set may be createdbased on a comparison of a file or files stored on the vehicle memorydevice with a file or files stored the storage device of the remotesource. According to yet other exemplary embodiments, control system 106both generates and transmits file information relating to files storedlocally and receives and uses file information relating to files storedremotely.

Once a transfer set of media files have been identified (step 704), thesystem may then begin retrieving media files (step 705) from the remotesource 116 via wireless data communications. This step may also (oralternatively) include transmitting files from the in-vehicle controlsystem to the remote source. As files are retrieved (and/ortransmitted), or shortly thereafter, the system may store these files(step 706) in local memory device 132 or in any other device capable offile storage. For example, upon receipt of the files, in vehicle controlsystem 106 may cause the files to be stored in another remote sourcecoupled to the vehicle control system via a wired (e.g., USB) orwireless (e.g., WiFi, Bluetooth, etc.) connection.

After file storage has been initiated or completed (step 706), thesystem may wait for further communications requests (step 707). Forexample, remote source 116 may send a delete, copy, or any other filemanagement command, to control system 106. Similar commands may be sentfrom control system 106 to the remote source. When some number ofcommunication requests have been handled, some time has elapsed, or someother event has happened, the system may prompt the user (either at thecar display, the remote source display, audibly via the audio system, orotherwise) whether further communication should be conducted (step 708).The system will conduct further communication (step 709) if the user sochooses. These steps 707, 708, 709 may create a loop whereby the usermay continue communicating between the vehicle 100 and remote source 116after the standard synchronization routine has completed. For example,the user may browse the files stored on control system 106 via thenetwork connection and his personal computer display 505. Similarly, theuser may browse the files stored on remote source 116 via the wirelesscommunication link and/or the various I/O systems of the vehicle (e.g.,display, audio system, etc.). When used in this manner, the user and theremote source 116 may recognize the control system 106 as a networkeddrive or networked computer on a LAN. The user may then conduct anyand/or all file management tasks with the control system 106 via hishome computer. If the user decides (at step 708) not to conduct furthercommunication, the system may then terminate communication (step 710).After communication has been terminated (step 710), the system may thensend itself into a sleep, hibernating, or powered-down state (step 711).Control system 106, vehicle data bus 601, and signal receiver 602 maywait for the remote control signal, car start, voice activation signal,button press signal, or otherwise (step 712) before powering up and/orstarting any further communication tasks.

Referring to FIG. 8, according to an exemplary embodiment, a flow chartillustrates a process of synchronizing data files between control system106 and remote source 116 from within vehicle 100. FIG. 8 illustrates aflow diagram of an in-vehicle activated synchronization, according to anexemplary embodiment. At any time while located within vehicle 100, auser may take an action to provide an in-vehicle synchronization command(step 801) to control system 106. For example, the in-vehiclesynchronization command (step 801) may be sent from audio input device128, data processing system 122 (e.g., via speech recognition device136, etc.), push buttons 110, 111, 112, 114, any additional buttons,output display 108 (e.g., touch screen enabled, etc.), home controlsystem 607, etc. The user may use a voice command or commands toactivate the initialization process. The voice command may be receivedby an audio input device, a signal representing the voice command may besent from the audio input device to an interface of the control system,the control system may use a speech recognition device to recognize thevoice command from the received signal, and the speech recognitiondevice may provide the recognized command to the processing system. FIG.8 also shows the steps of receiving a location-based signal (step 800)and making a location determination (step 799). Either step may be usedalone to activate the synchronization process or may be used incombination with other user input steps. The control system may beconfigured to both receive a location-based signal (step 800) and tomake a location determination (step 799). For example, the controlsystem may receive GPS coordinates from a location module (or otherdevice) and make a location determination based on the GPS coordinates.

Once an in-vehicle synchronization command has been received (step 801),the control system 106 may establish a communication link (step 802)with remote source 116. The control system 106 may then prompt the user(via output display 108, audio output devices 130, audio system 104,output display 108, etc.) whether the user would like to conduct a totalsynchronization (step 803). If the user selects “yes,” (via buttonpress, screen touch, voice command, or otherwise) the system may conducta complete synchronization process (step 804) perhaps involving acomparison or identification of appropriate synchronization files andtransferring the files. On the other hand, if the user selects “no,” thesystem may provide a detailed user interface to the user (e.g., onoutput display 108) prompting the user for input regarding specific usertransfer commands. Because step 803 allows a user to choose betweentotal synchronization and user driven synchronization, the system mayallow the user to decide what level of interaction they would like tohave with the system. For example, while driving or conducting othervehicle tasks, it may be desirable to have the synchronization conductedautomatically or relatively “behind-the-scenes.” On the other hand, ifthe user has just pulled into the driveway, for example, and would likea large amount of control over synchronization and other file transfertasks, he or she may choose to have a detailed graphical user interfaceprovided to him or her on output display 108. With the detailedgraphical user interface, the user may execute any number of usertransfer commands (step 807), again, possibly viewing any device (and/ora directory or folder structure thereof) on a connected wireless networkto effect transfer. Moreover, the user may conduct other tasks, such asbrowsing the Internet to download files, while a communication link withremote source 116 is active. Once all communication tasks have beencompleted the user may elect to terminate the communication connection(step 808).

Referring to FIG. 9, according to an exemplary embodiment, a homecontrol system 607 is illustrated that may be connected to vehicle bus601. Home control system 607 may be an integrated transceiver that canbe programmed to communicate with home devices 901. According to anexemplary embodiment, home devices 901 may include radio frequencydevices such as garage doors, gates, entry door locks, home/officelighting, or other RF devices. Through a training processing, the homecontrol system 607 may be configured to duplicate RF codes of originaltransmitters, allowing home control system 607 to be used with mostexisting RF systems. Home control system 607 may be located in the visorof vehicle 100, in the overhead system, on the ceiling, integral withcontrol system 106 housing, or may exist at any other location onvehicle 100. Home control system 607 may generally include a user inputarray 902, a home trained transmitter 903, a home trained receiver 904,a transmit microcontroller 905, an independent power supply 906, and ahost microcontroller 907. According to an exemplary embodiment, homecontrol device 607 is a radio frequency enabled device operating withina frequency range of 250-450 Mhz. According to various alternativeembodiments, home control device 607 is a radio frequency enabled devicecapable of operating on any radio frequency or radio frequencies capableof providing communications. Home control system 607 may be theHomeLink® system sold by Johnson Controls, Inc. According to variousembodiments, home control device 607 is configured to transmit onfrequencies between 27-50 Mhz.

Referring to FIG. 9, according to an exemplary embodiment, home controldevice 607 may generally operate via user input array 902. User inputarray 902 may be an array of small programmable tactile buttons. Eachbutton of the array 902 may be capable of being associated with one ormore radio frequency device codes such that when a user presses anyspecific button the corresponding code is transmitted from the hometrained transmitter 903. According to an exemplary embodiment, when aninput device of input array 902 is pressed or otherwise activated, thehome control device 607 not only transmits to home device 901, but alsosends a signal via vehicle data bus 601 to control system 106 to beginsynchronization with a remote source 116.

Home control device 607 may include a transmit microcontroller 905, anindependent power supply 906, and a host microcontroller 907. Usingthese parts, home control device 607 may operate independently fromcontrol system 106 during normal (i.e., non-synchronizing, etc.)operation. Home control device 607 may include only a single transmitmicrocontroller 905 wherein the power supply 906 may be hardwired to thechannel buttons (i.e., of user input array), such that when a button waspressed power would be provided to the transmit microcontroller 905 andsubsequently the home trained transmitter. When configured in thismanner, home control device 607 might only be able to transmit when theuser is pressing the button. This can result in a situation where theuser either did not press the button long enough (as some circuit delaywas present) or the user was forced to hold the button for aninconvenient amount of time (i.e., until the receiving home controldevice was in range and received the signal, etc.). According to theexemplary embodiment illustrated in FIG. 9, a host microcontroller 907is also provided. Host microcontroller 907 may have either of the twofunctions described below, at least the two functions described below,or otherwise. First, host microcontroller 907 may be configured toimprove user convenience by not requiring the user to hold down a buttonof user input array 902 until the receiver activates. Hostmicrocontroller 907 may accomplish this by receiving feedback from thetransmit microcontroller 905 that the button being pressed correspondsto a particular trained channel. Then, even if the user releases thebutton, host microcontroller 907 could act as if the button was stillbeing pressed such that the home control device 607 may continuetransmitting some period of time (e.g., 1-5 seconds, greater than 5seconds, etc.) after physical release of the button. According toanother exemplary embodiment, home control device 607 transmits for afirst period of time longer than the button press, stops transmittingfor some period of time, then transmits for a second period of time.Therefore, even if the user initially pressed the button while out ofrange and the first transmit did not reach home device 901, the secondtransmit might successfully reach the home device. For example, insteadof holding a button for a long period of time (e.g., up to 5 seconds,greater than 5 seconds, etc.) a user may only have to give the button aone-half second tap. Users may sense greater range and functionalityfrom home control device 607 as they approach home. For example, a usermay press a button while just out of range. Because home control device607 continues transmitting after a button press, when home device isactivated as vehicle 100 approaches, the user may perceive his initialbutton press as being in range. Additionally, the user may not have toseparately begin a synchronization process.

A second function the host microcontroller 907 may provide is to addnon-home control related functions such as a compass to vehicle 100. Forexample, host microcontroller may receive a compass signal, process acompass signal, translate the compass signal to a direction, and/ortranslate the direction to a signal for forwarding to a compass display,the control system, or otherwise. Host microcontroller 907 (and/oranother component of home control device 607) may also (oralternatively) be configured to send a synchronization signal to thecontrol system when the user input array is used. Home control device607 may thereby be configured to activate home device 901 and beginsynchronization with remote source 116 without having to continuepressing a button or navigating through menus to begin synchronization.In other words, one button press (or voice command, screen touch, etc.)might be used to conduct a number of tasks. For example, a user may onlyneed to press one button on user input array 902 to activate homedevices 901 (e.g., open the garage door, turn on the lights, etc.) andensure that the user's vehicle control system 106 is synchronized withremote source 116 (e.g., home personal computer, etc.). According tovarious alternative embodiments, home control device 607 may have anynumber of microcontrollers, hardware devices, power supplies, inputmechanisms, connections, etc. According to various embodiments, thefunctionality or circuitry of home control device 607 may be implementedpartially within software, may be implemented partially within controlsystem 106, may be implemented entirely within control system 106, orwithin any combination of these possibilities. According to an exemplaryembodiment, home control device 607 is any in-vehicle device of thepast, present or future capable of triggering a receiver of a homecontrol device 607 and/or activating a vehicle to home synchronizationtask.

Referring to FIG. 10, according to an exemplary embodiment, a flow chartillustrates a process wherein home control device 607 may be used tobegin a wireless synchronization process and activate a home device 901.Home control device 607 may receive a home control request (step 1001)from its own input array 902 or from an input mechanism of controlsystem 106 (e.g., voice command). The home control device 607 may thensimultaneously (or close-in-time) begin a home control transmissionprocess (starting at step 1002) and begin a wireless synchronizationprocess (step 1003).

Referring further to FIG. 10, according to an exemplary embodiment, thehome control transmission process (starting at step 1002) may includedetermining how to transmit (step 1002), transmitting the home controlcommand (step 1007), and continuing to transmit (step 1008). When homecontrol device 607 is determining how to transmit (step 1002), it mayassociate the button of input array 902 pressed with a particulartransmission task (e.g., a code, a scheme such as rolling code or fixed,a channel, a set of frequencies, etc. that are associated with the homedevice 901 the user intends to trigger). When home control device 607 istransmitting the home control command (step 1007) and continuing totransmit (step 1008), the home control device host microcontroller 907may be coordinating a transmission that lasts after a user has releaseda button of user input array 902.

Referring further to FIG. 10, according to an exemplary embodiment, thereceived home control request (step 1001) may also activate asynchronization process (step 1003) between the control system 106 and aremote source 116. When the home control request is received, the homecontrol device may be configured to send a signal to the control system,the signal may represent or be a command for the control system to beginthe synchronization process. Control system 106 may continue thesynchronization steps as detailed in previous FIGS. and description orotherwise. According to an exemplary embodiment, the steps ofsynchronization may be truncated when home control device 607 activatessynchronization (step 1003). For example, after home control device 607begins the synchronization process (step 1003), control system 106 maysimply establish a communications link (step 1004), complete thesynchronization process (step 1005), and terminate the communicationslink (step 1006) (with or without further user input). According tovarious exemplary embodiments, any process may be used with home controldevice 607 to complete a synchronization process and/or complete a homecontrol process.

Referring now to FIG. 11, a process for synchronizing a vehicle controlsystem and a remote source is shown. At any time during the operation ofthe vehicle, the user may speak a voice command. The command could be,for example, “Synchronize with Media Player,” “Sync with Cell Phone,”“Sync Calendar with PDA,” “Sync New Music on IPOD® with Vehicle,” etc.The audio input device (e.g., microphone) will receive the voice commandand a signal representing the voice command will be sent from the audioinput device to the control system. The control system will receive thesignal representing the voice command from the audio input device (step1101). Upon receipt of the signal, the control system may parse thesignal, recognize the phonemes, identify the command based on therecognized phonemes, and/or take any number of steps or sub-steps forrecognizing the voice command from the signal received from themicrophone. Based on the voice command, the control system is configuredto establish a wireless communication link with the remote source (step1102). To receive further vocal instruction from the user, the controlsystem may send an audio prompt signal to the vehicle audio system viaan interface (step 1104). The audio prompt may include, for example, aquestion relating to which files to synchronize, the date of the filesto synchronize, whether the synchronization should overwrite any files,etc. The control system may be configured to receive voice commands (orcommands from other user interface elements) relating to the category ofthe files to synchronize (e.g., work, home, calendar, media, music,video, maps, navigation, configuration files, etc.), the type of file tosynchronize (word processing document, spreadsheet documents, mp3 files,zip files), the size of the files to synchronize (e.g., less than onemegabyte, more than one megabyte, etc.), the date created, the date lastmodified, the genre, the artist, the album, the user-assigned rating ofthe file, the creator, the owner of the file, etc. The control systemmay further be configured to process the received commands and to buildsynchronization sets (transfer sets) based on the received and processedcommands. The system may receive the further vocal instruction from theuser via the microphone (step 1106). The voice response may berecognized and evaluated by the control system (step 1108). Based on thevoice response, the system may then initialize synchronization (step1110). Synchronize initialization may include tagging or queuing certainfiles for transfer. Once the system is initialized, the system may senda transfer request signal to the remote source (step 1112). When data isreceived by the control system in response to the transfer request (step1114), the system may store the data, forward the data, play back thedata, display the data, or otherwise.

According to any preferred embodiment, control system 106 is anin-vehicle control system 106 as generally illustrated by the FIGS.Control system 106 may include memory device 132 having at least anon-volatile memory 142. Control system 106 may also includecommunications device 120 configured to communicate with a variety ofdifferent devices. Communications device 120 may be a wirelesscommunications device configured to communicate with a variety ofwireless devices (e.g., mobile phone 144, personal digital assistant146, media player 148, personal navigation device 150, pager 152, remotesource 116, remote server 154, etc.). Control system 106 may beconfigured to conduct various file synchronization tasks with any of theaforementioned devices. Synchronization may be activated via a portablewireless device 501 such as a key fob or via an activating mechanismwithin vehicle 100. Control system 106 may exist communicably connectedto the vehicle's primary vehicle data bus 601. A signal receiver 602configured to receive signals from portable wireless device 501 may alsobe coupled to vehicle data bus 601 and/or control system 106. A user maypress a synchronization button 504 on the portable wireless device 501to activate synchronization between control system 106 and remote source116. If the control system 106 is in a powered-down state, the vehicledata bus 601 may activate or power-up components of control system 106to begin synchronization. The control system 106 may provide the useroptions relating to the synchronization, or may establish acommunications link and conduct synchronization tasks without furtheruser interaction. Synchronization may include comparing files withincontrol system 106 and remote source 116, building a difference set ortransfer set between the files, and sending and receiving files untilspecified file stores are the same on control system 106 and remotesource 116. When synchronization has completed, the control system 106may terminate the communication link and return to a powered-down state.

While the exemplary embodiments illustrated in the Figures and describedabove are presently preferred, it should be understood that theseembodiments are offered by way of example only. Accordingly, the presentinvention is not limited to a particular embodiment, but extends tovarious modifications that nevertheless fall within the scope of theappended claims. The order or sequence of any processes or method stepsmay be varied or re-sequenced according to alternative embodiments.

Describing the invention with Figures should not be construed asimposing on the invention any limitations that may be present in theFigures. The present invention contemplates methods, systems and programproducts on any machine-readable media for accomplishing its operations.The embodiments of the present invention may be implemented using anexisting computer processors, or by a special purpose computer processorfor an appropriate vehicle system, incorporated for this or anotherpurpose or by a hardwired system. Further, although some Figures may bedescribed as alternative or separate embodiments, it should beunderstood that various processes, components, and systems couldco-exist in one embodiment. For example, the control system 106 might beconfigured to execute some of the processes shown and/or described, oneof the processes, all of the processes, or otherwise.

It is important to note that the construction and arrangement of thecontrol system as shown in the various exemplary embodiments isillustrative only. Although only a few embodiments of the presentinventions have been described in detail in this disclosure, thoseskilled in the art who review this disclosure will readily appreciatethat many modifications are possible (e.g., variations in sizes,dimensions, structures, shapes and proportions of the various elements,values of parameters, mounting arrangements, use of materials, colors,orientations, etc.) without materially departing from the novelteachings and advantages of the subject matter recited in the claims.For example, elements shown as integrally formed may be constructed ofmultiple parts or elements (e.g., control system 106, memory device 132,communications device 120, data processing system 122, remote source116, remote server 154, home control device 607, etc.), the position ofelements may be reversed or otherwise varied (e.g., the components ofcontrol system 106, home control device 607, etc.), and the nature ornumber of discrete elements or positions may be altered or varied (e.g.,communications device 120, memory device 132, the components of controlsystem 106, etc.). Accordingly, all such modifications are intended tobe included within the scope of the present invention as defined in theappended claims. The order or sequence of any process or method stepsmay be varied or re-sequenced according to alternative embodiments. Inthe claims, any means-plus-function clause is intended to cover thestructures described herein as performing the recited function and notonly structural equivalents but also equivalent structures. Othersubstitutions, modifications, changes and omissions may be made in thedesign, operating conditions and arrangement of the exemplaryembodiments without departing from the scope of the present inventionsas expressed in the appended claims.

As noted above, embodiments within the scope of the present inventioninclude program products comprising machine-readable media for carryingor having machine-executable instructions or data structures storedthereon. Such machine-readable media can be any available media whichcan be accessed by a general purpose or special purpose computer orother machine with a processor. By way of example, such machine-readablemedia can comprise RAM, ROM, EPROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage or other magnetic storage devices, or anyother medium which can be used to carry or store desired program code inthe form of machine-executable instructions or data structures and whichcan be accessed by a general purpose or special purpose computer orother machine with a processor. When information is transferred orprovided over a network or another communications connection (eitherhardwired, wireless, or a combination of hardwired or wireless) to amachine, the machine properly views the connection as a machine-readablemedium. Thus, any such connection is properly termed a machine-readablemedium. Combinations of the above are also included within the scope ofmachine-readable media. Machine-executable instructions comprise, forexample, instructions and data which cause a general purpose computer,special purpose computer, or special purpose processing machines toperform a certain function or group of functions.

It should be noted that although the diagrams herein may show a specificorder of method steps, it is understood that the order of these stepsmay differ from what is depicted. Also two or more steps may beperformed concurrently or with partial concurrence. Such variation willdepend on the software and hardware systems chosen and on designerchoice. It is understood that all such variations are within the scopeof the invention. Likewise, software implementations of the presentinvention could be accomplished with standard programming techniqueswith rule based logic and other logic to accomplish the variousconnection steps, processing steps, comparison steps and decision steps.

The foregoing description of embodiments of the invention has beenpresented for purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdisclosed, and modifications and variations are possible in light of theabove teachings or may be acquired from practice of the invention. Theembodiments were chosen and described in order to explain the principalsof the invention and its practical application to enable one skilled inthe art to utilize the invention in various embodiments and with variousmodifications as are suited to the particular use contemplated.

1-14. (canceled)
 15. A method for synchronizing the data files of anin-vehicle control system with a remote source, comprising the steps of:receiving a synchronization command from a wireless portable device,wherein the synchronization command is received by a signal receiver;activating the in-vehicle control system from a powered-down state to apowered-up state; establishing a wireless data communication linkbetween the in-vehicle control system and the remote source; andsynchronizing at least one data file between the in-vehicle controlsystem and the remote source via the wireless data communication link.16. The method of claim 15, further comprising the steps of: terminatingthe wireless data communication link between the in-vehicle controlsystem and the remote source; and causing the in-vehicle control systemto enter a reduced power state once the data communications link isterminated.
 17. The method of claim 15, wherein the signal receiver iscoupled to the vehicle data bus.
 18. A method for synchronizing the datafiles of a remote source with an in-vehicle control system, comprisingthe steps of: receiving a synchronization command to an in-vehiclecontrol system via an input device mounted to the vehicle andcommunicably coupled to the in-vehicle control system; establishing awireless communication link between the remote source and the in-vehiclecontrol system; and synchronizing a plurality of data files stored inthe remote source with a plurality of data files stored in thein-vehicle control system.
 19. The method of claim 18, wherein the inputdevice is a microphone configured to receive voice from a vehicleoccupant, wherein the method further comprises using speech recognitionto determine the synchronization command from a signal representing thevoice received at the microphone.
 20. The method of claim 18, whereinthe method further includes providing a graphical user interface via anoutput display coupled to the in-vehicle control system.
 21. The methodof claim 20, wherein the method further includes executing a pluralityof user transfer commands using the in-vehicle control system, whereinthe commands are input via the in-vehicle control system.
 22. The methodof claim 21, wherein user transfer commands include commands formanaging the data files of the remote source.
 23. The method of claim21, wherein user transfer commands include commands for browsing thecontents of the remote source.